package com.ruoyi.system.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.SysMenuPropertiesMapper;
import com.ruoyi.system.domain.SysMenuProperties;
import com.ruoyi.system.service.ISysMenuPropertiesService;

/**
 * 菜单属性Service业务层处理
 * 
 * @author huikai
 * @date 2025-04-12
 */
@Service
public class SysMenuPropertiesServiceImpl implements ISysMenuPropertiesService 
{
    @Autowired
    private SysMenuPropertiesMapper sysMenuPropertiesMapper;

    /**
     * 查询菜单属性
     * 
     * @param propertiesId 菜单属性主键
     * @return 菜单属性
     */
    @Override
    public SysMenuProperties selectSysMenuPropertiesByPropertiesId(Long propertiesId)
    {
        return sysMenuPropertiesMapper.selectSysMenuPropertiesByPropertiesId(propertiesId);
    }

    /**
     * 查询菜单属性列表
     * 
     * @param sysMenuProperties 菜单属性
     * @return 菜单属性
     */
    @Override
    public List<SysMenuProperties> selectSysMenuPropertiesList(SysMenuProperties sysMenuProperties)
    {
        return sysMenuPropertiesMapper.selectSysMenuPropertiesList(sysMenuProperties);
    }

    /**
     * 新增菜单属性
     * 
     * @param sysMenuProperties 菜单属性
     * @return 结果
     */
    @Override
    public int insertSysMenuProperties(SysMenuProperties sysMenuProperties)
    {
        sysMenuProperties.setCreateTime(DateUtils.getNowDate());
        return sysMenuPropertiesMapper.insertSysMenuProperties(sysMenuProperties);
    }

    /**
     * 修改菜单属性
     * 
     * @param sysMenuProperties 菜单属性
     * @return 结果
     */
    @Override
    public int updateSysMenuProperties(SysMenuProperties sysMenuProperties)
    {
        sysMenuProperties.setUpdateTime(DateUtils.getNowDate());
        return sysMenuPropertiesMapper.updateSysMenuProperties(sysMenuProperties);
    }

    /**
     * 批量删除菜单属性
     * 
     * @param propertiesIds 需要删除的菜单属性主键
     * @return 结果
     */
    @Override
    public int deleteSysMenuPropertiesByPropertiesIds(Long[] propertiesIds)
    {
        return sysMenuPropertiesMapper.deleteSysMenuPropertiesByPropertiesIds(propertiesIds);
    }

    /**
     * 删除菜单属性信息
     * 
     * @param propertiesId 菜单属性主键
     * @return 结果
     */
    @Override
    public int deleteSysMenuPropertiesByPropertiesId(Long propertiesId)
    {
        return sysMenuPropertiesMapper.deleteSysMenuPropertiesByPropertiesId(propertiesId);
    }
}
